xdndHandler used to wait for the stage to show up before calling
global.init_xdnd() . Since commit
65303d027aa8 xdndHandler is initalized
later so the stage might be already visible at this point causing the
show signal never to be emitted and thus global.init_xdnd will never
be called.
Fix that by checking by calling global.init_xdnd without waiting for
the stage's show signal to be emitted, as the stage is guaranted to be
visible at this point.
Shell.util_set_hidden_from_pick(this._dummy, true);
this._dummy.hide();
- // Mutter delays the creation of the output window as long
- // as possible to avoid flicker. In case a plugin wants to
- // access it directly it has to connect to the stage's show
- // signal. (see comment in compositor.c:meta_compositor_manage_screen)
- global.stage.connect('show', function () {
- global.init_xdnd();
- return false;
- });
+ global.init_xdnd();
global.connect('xdnd-enter', Lang.bind(this, this._onEnter));
global.connect('xdnd-position-changed', Lang.bind(this, this._onPositionChanged));